/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package clustering;


import java.util.Enumeration;
import java.util.Hashtable;
//import weka.clusterers.SimpleKMeans;

public abstract class ClusteringAlgorithm {
  
    public final static int DISTANCIA_COSSENO = 1;
    public final static int DISTANCIA_ALTERNATIVA = 2;
    public final static int DISTANCIA_TANIMOTO = 4;   
    public final static double MAX_DIST_Cosseno= 1.0;        
    public final static double MAX_DIST_Alternativa = 1.0;             
    public final static double MAX_DIST_Tanimoto = 1.0; 
      
    public abstract void run(int tipoDistancia, int topQuantos);
    
    public abstract boolean isASearchTerm(String s);
    
    public abstract boolean isHashtag(String s);
    
    public abstract void printClusters();
     
    public abstract void computePopularWords(int topQuantos);
    
    public abstract void postMessage(String string);
    
    public abstract Hashtable<String, Integer> computePopularWordsOfCluster(
            Hashtable<Integer, Integer> cluster, int topQuantos);    
    
    public abstract Enumeration <String> getListPopWordsCluster(int nCluster);
    
    public abstract void printPopularWords();
    
    public abstract int[] getSizeTopClusters();
      
}


